Distributed computer systems, in particular process control systems, are composed of a multiplicity of distributed components that are interrelated, for example in client-server relationships. The components of the distributed system, each of which provide one or more functionalities, are distributed over a plurality of computers or data processing devices, also referred to below as system nodes. Examples of system nodes used in the automation system are operator stations, engineering stations, archiving stations, control equipment comprising processing stations, and input and output units. The system nodes are connected together via one or more physical networks.
Operating systems, user software, control programs and various functional components of the process control system are installed on the system nodes, with the individual system nodes, including their various functional components, being dependent on each other in a variety of ways.
There are a range of software tools for installing and maintaining hardware and/or software in a distributed automation system, some of which assist in the maintenance tasks to be carried out and which, for example, install new systems, system updates, system upgrades to a higher version and system expansions incorporating additional functionalities, or which perform system analyses. These processes, however, do not include functionalities distributed over a plurality of system nodes. The aforementioned separate software tools are, by way of example, tools for backing up and restoring application data, tools for the system analysis or tools for upgrading the firmware in controllers, the tools being addressed and started in different ways. This means that the tools are nonuniform in their operator control and are not necessarily in tune with one another. The use of the tools for the relevant maintenance tasks, particularly as regards their order and the time of their use within the manual maintenance process, is usually described in documentation which the user needs to read beforehand, resulting in increased risk of error.
The current approach to software installation and maintenance assumes that computers are functionally self-contained. For installation and maintenance tasks on distributed systems, such as, for example, system updates, system upgrades, system expansions or system analyses, it is usually necessary to execute different installation and configuration steps separately in a specific, predefined sequence on every system node. At present, there is no tool that manages such installation and maintenance tasks on a system-wide basis from a single computer.
In addition, existing procedures only handle individual computers in a distributed system independently of each other.
Further disadvantages of today's system installation procedures and system maintenance procedures relate to the fact that in order to install and maintain the new software, the user must interact with every desktop, and must often cover large distances between the individual computers, for example by means of a remote maintenance console.